const mysql = require('mysql2/promise'); //引入mysql2/promise模块
const config = require('../config/index'); //引入配置文件


//创建连接池,MySQL驱动会立即尝试连接到数据库
// 预先创建一定数量的连接（根据 connectionLimit 配置）,这些连接保持活跃状态，等待使用
const pool = mysql.createPool(config.db); 



// 测试连接池是否正常工作
async function testConnection() {
    try {
        console.log('🧪 正在测试数据库连接...');
        const connection = await pool.getConnection();
        console.log('✅ 数据库连接测试成功！');
        connection.release();
        console.log('📤 测试连接已释放');
    } catch (error) {
        console.error('❌ 数据库连接测试失败:', error.message);
        process.exit(1);
    }
}

// 立即执行连接测试
testConnection();

module.exports = pool;